// source --> https://www.infusion-d.com/cms/wp-content/themes/infusion-d/js/easing.js
/*
* jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
*
* Uses the built in easing capabilities added In jQuery 1.1
* to offer multiple easing options
*
* TERMS OF USE - jQuery Easing
*
* Open source under the BSD License.
*
* Copyright ツゥ 2008 George McGinley Smith
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* Neither the name of the author nor the names of contributors may be used to endorse
* or promote products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
// t: current time, b: begInnIng value, c: change In value, d: duration
jQuery.easing['jswing'] = jQuery.easing['swing'];
jQuery.extend( jQuery.easing,
{
def: 'easeOutQuad',
swing: function (x, t, b, c, d) {
//alert(jQuery.easing.default);
return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
},
easeInQuad: function (x, t, b, c, d) {
return c*(t/=d)*t + b;
},
easeOutQuad: function (x, t, b, c, d) {
return -c *(t/=d)*(t-2) + b;
},
easeInOutQuad: function (x, t, b, c, d) {
if ((t/=d/2) < 1) return c/2*t*t + b;
return -c/2 * ((--t)*(t-2) - 1) + b;
},
easeInCubic: function (x, t, b, c, d) {
return c*(t/=d)*t*t + b;
},
easeOutCubic: function (x, t, b, c, d) {
return c*((t=t/d-1)*t*t + 1) + b;
},
easeInOutCubic: function (x, t, b, c, d) {
if ((t/=d/2) < 1) return c/2*t*t*t + b;
return c/2*((t-=2)*t*t + 2) + b;
},
easeInQuart: function (x, t, b, c, d) {
return c*(t/=d)*t*t*t + b;
},
easeOutQuart: function (x, t, b, c, d) {
return -c * ((t=t/d-1)*t*t*t - 1) + b;
},
easeInOutQuart: function (x, t, b, c, d) {
if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
return -c/2 * ((t-=2)*t*t*t - 2) + b;
},
easeInQuint: function (x, t, b, c, d) {
return c*(t/=d)*t*t*t*t + b;
},
easeOutQuint: function (x, t, b, c, d) {
return c*((t=t/d-1)*t*t*t*t + 1) + b;
},
easeInOutQuint: function (x, t, b, c, d) {
if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
return c/2*((t-=2)*t*t*t*t + 2) + b;
},
easeInSine: function (x, t, b, c, d) {
return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
},
easeOutSine: function (x, t, b, c, d) {
return c * Math.sin(t/d * (Math.PI/2)) + b;
},
easeInOutSine: function (x, t, b, c, d) {
return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
},
easeInExpo: function (x, t, b, c, d) {
return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
},
easeOutExpo: function (x, t, b, c, d) {
return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
},
easeInOutExpo: function (x, t, b, c, d) {
if (t==0) return b;
if (t==d) return b+c;
if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
},
easeInCirc: function (x, t, b, c, d) {
return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
},
easeOutCirc: function (x, t, b, c, d) {
return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
},
easeInOutCirc: function (x, t, b, c, d) {
if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
},
easeInElastic: function (x, t, b, c, d) {
var s=1.70158;var p=0;var a=c;
if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
if (a < Math.abs(c)) { a=c; var s=p/4; }
else var s = p/(2*Math.PI) * Math.asin (c/a);
return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
},
easeOutElastic: function (x, t, b, c, d) {
var s=1.70158;var p=0;var a=c;
if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
if (a < Math.abs(c)) { a=c; var s=p/4; }
else var s = p/(2*Math.PI) * Math.asin (c/a);
return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
},
easeInOutElastic: function (x, t, b, c, d) {
var s=1.70158;var p=0;var a=c;
if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
if (a < Math.abs(c)) { a=c; var s=p/4; }
else var s = p/(2*Math.PI) * Math.asin (c/a);
if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
},
easeInBack: function (x, t, b, c, d, s) {
if (s == undefined) s = 1.70158;
return c*(t/=d)*t*((s+1)*t - s) + b;
},
easeOutBack: function (x, t, b, c, d, s) {
if (s == undefined) s = 1.70158;
return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
},
easeInOutBack: function (x, t, b, c, d, s) {
if (s == undefined) s = 1.70158;
if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
},
easeInBounce: function (x, t, b, c, d) {
return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
},
easeOutBounce: function (x, t, b, c, d) {
if ((t/=d) < (1/2.75)) {
return c*(7.5625*t*t) + b;
} else if (t < (2/2.75)) {
return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
} else if (t < (2.5/2.75)) {
return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
} else {
return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
}
},
easeInOutBounce: function (x, t, b, c, d) {
if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
}
});
/*
*
* TERMS OF USE - EASING EQUATIONS
*
* Open source under the BSD License.
*
* Copyright ツゥ 2001 Robert Penner
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* Neither the name of the author nor the names of contributors may be used to endorse
* or promote products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/;
// source --> https://www.infusion-d.com/cms/wp-content/themes/infusion-d/js/script.js
$(function(){
var w = $(window).width();
var x = 640;
// viewportSwitch
if (w > x) {
$('meta[name=viewport]').remove();
var meta = document.createElement('meta');
meta.setAttribute('name', 'viewport');
meta.setAttribute('content', 'width=1024');
document.getElementsByTagName('head')[0].appendChild(meta);
}
// smoothScroll
$('a[href^="#"]').click(function() {
$('.js--spMenu:visible').css('top', '-400px');
$('html:not(:animated), body:not(:animated)').animate({
scrollTop: $($(this).attr('href')).offset().top - $('#gnav').height() - 20
}, 200, 'swing');
return false;
});
// spMenu
$(document).stop(true, true).on('click','header .js--open',function(){
$('.js--spMenu').css({'top': '0'});
$(this).removeClass('js--open').addClass('js--close');
return false;
});
$(document).stop(true, true).on('click','header .js--close',function(){
$('.js--spMenu').css({'top': '-400px'});
$(this).removeClass('js--close').addClass('js--open');
return false;
});
// IE bgsize
$(".top").css( "background-size", "1024px" );
$(".container").css( "background-size", "1024px" );
$("footer").css( "background-size", "1024px" );
//news feed
var formatData = function(date) {
var d = new Date(date);
return (d.getFullYear() + '.' + ("0" + (d.getMonth() + 1)).slice(-2) + '.' + ("0" + d.getDate()).slice(-2));
};
// facebook feed
// var formatData = function(date) {
// var tmp = date.split('T');
// var dates = tmp[0].split('-');
// return dates[0] + '.' + dates[1] + '.' + dates[2];
// };
// var count = 0;
// var fb_news = $('#news__feed ul');
// $.getJSON('https://graph.facebook.com/v2.3/618442538223532/feed?fields=id,message,created_time,link,object_id&access_token=1550681725227833|m57D1Pg61HlMdez3ArlkzOVdGnA', function(data) {
// $.each( data.data, function(i, item) {
// var itemContent = item.message;
// var itemDate = item.created_time;
// var itemUrl = item.link;
// if (itemContent.length >= 70) {
// itemContent = itemContent.substring(0, 70) + '...';
// };
// fb_news.append('
' + formatData(itemDate) + '' + itemContent + '');
// count++;
// if( count == 3) {
// return false;
// }
// });
// fb_news.find('.loading').remove();
// // 日付順にソートする
// var news = [];
// $("#news__feed ul li").each( function( i, v){
// $this = $( this);
// news[i] = {};
// news[i].html = $this.html();
// news[i].key = $this.find( ".date").text();
// });
// news.sort( function( a, b) {
// return b.key > a.key; //>
// })
// $("#news__feed ul li").remove();
// $.each( news, function( i, v){
// fb_news.append( ""+ v.html + "");
// })
// }).error(function() {
// fb_news.find('.loading').remove();
// fb_news.append('お知らせを読み込めませんでした。');
// }).done( function(){
// fb_news.find('.loading').remove();
// })
// height adjustment
var setPrt = $('.cat__box'),
setChd = setPrt.find('.cat__item');
function argHeight(){
prtWidth = setPrt.outerWidth();
chdWidth = setChd.outerWidth();
setNum = Math.floor(prtWidth / chdWidth);
chdLength = setChd.length;
setChd.css({height:'auto'});
setPrt.each(function(){
h = 0;
setChd.each(function(i){
var self = $(this),
i = i+1,
hSet = self.outerHeight(),
pdTop = parseInt(self.css('padding-top')),
pdBtm = parseInt(self.css('padding-bottom')),
boxSizing = self.css('box-sizing');
self.addClass('heightReplace');
if(hSet > h){
h = hSet;
};
if(boxSizing === 'border-box'){
setPrt.find('.heightReplace').css({height:h});
} else {
setPrt.find('.heightReplace').css({height:(h-(pdTop + pdBtm))});
}
if(i%setNum == 0 || i == chdLength){
h = 0;
setChd.removeClass('heightReplace');
}
});
});
}
$(window).on('load resize',function(){
argHeight();
}).resize();
});
$(window).on('load scroll', function(){
if($('#contents').length) {
var contT = $('#contents').offset().top;
var winT = $(document).scrollTop();
if(winT >= (contT - 70)) {
$('#gnav').addClass('scrolled');
} else {
$('#gnav').removeClass('scrolled');
}
}
});
$(window).on('load resize', function(){
var w = $(window).width();
var x = 640;
// spImageSwich
if (w < x) {
$('.js--replace').each(function(){
var txt = $(this).html();
$(this).html(
txt.replace(/img\u002fcommon/g,'img\u002fsp')
);
});
} else {
$('.js--replace').each(function(){
var txt = $(this).html();
$(this).html(
txt.replace(/img\u002fsp/g,'img\u002fcommon')
);
});
}
// wrapPadding
if (w < x) {
var h = $('header').height();
$('.wrap').css('padding-top', h+'px');
} else {
var h = $('header').height();
$('.wrap').css('padding-top', '0px');
}
// tableInsert
if (w < x) {
$('.company__wrap table tr').each(function(i) {
i = i + 1;
$(this).addClass('js--insert-' + i);
$('.js--insert-' + i + ' th').insertBefore('.js--insert-' + i + ' td:nth-of-type(1)');
});
} else {
$('.company__wrap table tr').each(function(i) {
i = i + 1;
$('.js--insert-' + i + ' th').insertAfter('.js--insert-' + i + ' td:nth-of-type(1)');
});
}
});
// source --> https://www.infusion-d.com/cms/wp-content/themes/infusion-d/js/jquery.backgroundSize.js
/*
* backgroundSize: A jQuery cssHook adding support for "cover" and "contain" to IE6,7,8
*
* Requirements:
* - jQuery 1.7.0+
*
* Limitations:
* - doesn't work with multiple backgrounds (use the :after trick)
* - doesn't work with the "4 values syntax" of background-position
* - doesn't work with lengths in background-position (only percentages and keywords)
* - doesn't work with "background-repeat: repeat;"
* - doesn't work with non-default values of background-clip/origin/attachment/scroll
* - you should still test your website in IE!
*
* latest version and complete README available on Github:
* https://github.com/louisremi/jquery.backgroundSize.js
*
* Copyright 2012 @louis_remi
* Licensed under the MIT license.
*
* This saved you an hour of work?
* Send me music http://www.amazon.co.uk/wishlist/HNTU0468LQON
*
*/
(function($,window,document,Math,undefined) {
var div = $( "" )[0],
rsrc = /url\(["']?(.*?)["']?\)/,
watched = [],
positions = {
top: 0,
left: 0,
bottom: 1,
right: 1,
center: .5
};
// feature detection
if ( "backgroundSize" in div.style && !$.debugBGS ) { return; }
$.cssHooks.backgroundSize = {
set: function( elem, value ) {
var firstTime = !$.data( elem, "bgsImg" ),
pos,
$wrapper, $img;
$.data( elem, "bgsValue", value );
if ( firstTime ) {
// add this element to the 'watched' list so that it's updated on resize
watched.push( elem );
$.refreshBackgroundDimensions( elem, true );
// create wrapper and img
$wrapper = $( "
" ).css({
position: "absolute",
zIndex: -1,
top: 0,
right: 0,
left: 0,
bottom: 0,
overflow: "hidden"
});
$img = $( "
" ).css({
position: "absolute"
}).appendTo( $wrapper ),
$wrapper.prependTo( elem );
$.data( elem, "bgsImg", $img[0] );
pos = (
// Firefox, Chrome (for debug)
$.css( elem, "backgroundPosition" ) ||
// IE8
$.css( elem, "backgroundPositionX" ) + " " + $.css( elem, "backgroundPositionY" )
).split(" ");
// Only compatible with 1 or 2 percentage or keyword values,
// Not yet compatible with length values and 4 values.
$.data( elem, "bgsPos", [
positions[ pos[0] ] || parseFloat( pos[0] ) / 100,
positions[ pos[1] ] || parseFloat( pos[1] ) / 100
]);
// This is the part where we mess with the existing DOM
// to make sure that the background image is correctly zIndexed
$.css( elem, "zIndex" ) == "auto" && ( elem.style.zIndex = 0 );
$.css( elem, "position" ) == "static" && ( elem.style.position = "relative" );
$.refreshBackgroundImage( elem );
} else {
$.refreshBackground( elem );
}
},
get: function( elem ) {
return $.data( elem, "bgsValue" ) || "";
}
};
// The background should refresh automatically when changing the background-image
$.cssHooks.backgroundImage = {
set: function( elem, value ) {
// if the element has a backgroundSize, refresh its background
return $.data( elem, "bgsImg") ?
$.refreshBackgroundImage( elem, value ) :
// otherwise set the background-image normally
value;
}
};
$.refreshBackgroundDimensions = function( elem, noBgRefresh ) {
var $elem = $(elem),
currDim = {
width: $elem.innerWidth(),
height: $elem.innerHeight()
},
prevDim = $.data( elem, "bgsDim" ),
changed = !prevDim ||
currDim.width != prevDim.width ||
currDim.height != prevDim.height;
$.data( elem, "bgsDim", currDim );
if ( changed && !noBgRefresh ) {
$.refreshBackground( elem );
}
};
$.refreshBackgroundImage = function( elem, value ) {
var img = $.data( elem, "bgsImg" ),
currSrc = ( rsrc.exec( value || $.css( elem, "backgroundImage" ) ) || [] )[1],
prevSrc = img && img.src,
changed = currSrc != prevSrc,
imgWidth, imgHeight;
if ( changed ) {
img.style.height = img.style.width = "auto";
img.onload = function() {
var dim = {
width: img.width,
height: img.height
};
// ignore onload on the proxy image
if ( dim.width == 1 && dim.height == 1 ) { return; }
$.data( elem, "bgsImgDim", dim );
$.data( elem, "bgsConstrain", false );
$.refreshBackground( elem );
img.style.visibility = "visible";
img.onload = null;
};
img.style.visibility = "hidden";
img.src = currSrc;
if ( img.readyState || img.complete ) {
img.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==";
img.src = currSrc;
}
elem.style.backgroundImage = "none";
}
};
$.refreshBackground = function( elem ) {
var value = $.data( elem, "bgsValue" ),
elemDim = $.data( elem, "bgsDim" ),
imgDim = $.data( elem, "bgsImgDim" ),
$img = $( $.data( elem, "bgsImg" ) ),
pos = $.data( elem, "bgsPos" ),
prevConstrain = $.data( elem, "bgsConstrain" ),
currConstrain,
elemRatio = elemDim.width / elemDim.height,
imgRatio = imgDim.width / imgDim.height,
delta;
if ( value == "contain" ) {
if ( imgRatio > elemRatio ) {
$.data( elem, "bgsConstrain", ( currConstrain = "width" ) );
delta = Math.floor( ( elemDim.height - elemDim.width / imgRatio ) * pos[1] );
$img.css({
top: delta
});
// when switchin from height to with constraint,
// make sure to release contraint on height and reset left
if ( currConstrain != prevConstrain ) {
$img.css({
width: "100%",
height: "auto",
left: 0
});
}
} else {
$.data( elem, "bgsConstrain", ( currConstrain = "height" ) );
delta = Math.floor( ( elemDim.width - elemDim.height * imgRatio ) * pos[0] );
$img.css({
left: delta
});
if ( currConstrain != prevConstrain ) {
$img.css({
height: "100%",
width: "auto",
top: 0
});
}
}
} else if ( value == "cover" ) {
if ( imgRatio > elemRatio ) {
$.data( elem, "bgsConstrain", ( currConstrain = "height" ) );
delta = Math.floor( ( elemDim.height * imgRatio - elemDim.width ) * pos[0] );
$img.css({
left: -delta
});
if ( currConstrain != prevConstrain ) {
$img.css({
height:"100%",
width: "auto",
top: 0
});
}
} else {
$.data( elem, "bgsConstrain", ( currConstrain = "width" ) );
delta = Math.floor( ( elemDim.width / imgRatio - elemDim.height ) * pos[1] );
$img.css({
top: -delta
});
if ( currConstrain != prevConstrain ) {
$img.css({
width: "100%",
height: "auto",
left: 0
});
}
}
}
}
// Built-in throttledresize
var $event = $.event,
$special,
dummy = {_:0},
frame = 0,
wasResized, animRunning;
$special = $event.special.throttledresize = {
setup: function() {
$( this ).on( "resize", $special.handler );
},
teardown: function() {
$( this ).off( "resize", $special.handler );
},
handler: function( event, execAsap ) {
// Save the context
var context = this,
args = arguments;
wasResized = true;
if ( !animRunning ) {
$(dummy).animate(dummy, { duration: Infinity, step: function() {
frame++;
if ( frame > $special.threshold && wasResized || execAsap ) {
// set correct event type
event.type = "throttledresize";
$event.dispatch.apply( context, args );
wasResized = false;
frame = 0;
}
if ( frame > 9 ) {
$(dummy).stop();
animRunning = false;
frame = 0;
}
}});
animRunning = true;
}
},
threshold: 1
};
// All backgrounds should refresh automatically when the window is resized
$(window).on("throttledresize", function() {
$(watched).each(function() {
$.refreshBackgroundDimensions( this );
});
});
})(jQuery,window,document,Math);
// source --> https://www.infusion-d.com/cms/wp-content/themes/infusion-d/js/jquery.footerFixed.js
/*--------------------------------------------------------------------------*
*
* footerFixed.js
*
* MIT-style license.
*
* 2007 Kazuma Nishihata [to-R]
* http://blog.webcreativepark.net
*
*--------------------------------------------------------------------------*/
new function(){
var footerId = "footer";
//メイン
function footerFixed(){
//ドキュメントの高さ
var dh = document.getElementsByTagName("body")[0].clientHeight;
//フッターのtopからの位置
document.getElementById(footerId).style.top = "0px";
var ft = document.getElementById(footerId).offsetTop;
//フッターの高さ
var fh = document.getElementById(footerId).offsetHeight;
//ウィンドウの高さ
if (window.innerHeight){
var wh = window.innerHeight;
}else if(document.documentElement && document.documentElement.clientHeight != 0){
var wh = document.documentElement.clientHeight;
}
if(ft+fh